{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {
    "collapsed": true,
    "pycharm": {
     "name": "#%% OO-style (object oriented)\n"
    }
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%% pyplot-style\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "outputs": [
    {
     "data": {
      "text/plain": "   A   B\n0  1   1\n1  2   4\n2  3   9\n3  4  16",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>1</td>\n      <td>1</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>2</td>\n      <td>4</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>3</td>\n      <td>9</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>4</td>\n      <td>16</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.DataFrame({\n",
    "    'A': [1,2,3,4]\n",
    "})\n",
    "df['B'] = df['A'] ** 2\n",
    "df"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 600x600 with 1 Axes>",
      "image/png": "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L7jgAjVt2rTKfXv06CFJcrlcWrNmjU4++WRJ0qxDi7mOHTtW8dXMoXPZZZepVatW2rNnj7777juN8l79A4SSP/7RXI124IBpcSguNq0oSUlmQPO55/r2HT5cWrpUOumk2r3WxIlm4PQDD5hFqU8+2UxOeWTLimX51tiTzJQHzz/v36zoTqdZbPn8803r1Nq1pubffjODrrOyzO33381rVLWWnsNhrv6LjTWtLv4qe+FMQUH1821JZlB5ZYPBx441E37WxiOPSFu2mFanO+6ofL/wcHPl48UXmxaoX34xg9o3bzbrRG7dalqfcnLMd+RYhIWZz+SUU47tPMAxorswgL744gstXbpU/fr10/Dhw6vc99dffz0crPbu3asWLVqopKRE8fHxKiws1Pvvv6/LLrus2te84oorNGfOHN15552aTrM44D/LMt1uiYmmmzCYr1NcbG4ulwkb4eEmrEVH1265myuvNFfwSSbkde9e/TGlpWausdxcE/48HhM+e/aU2rateQ1lZWebYOnv7Pj+1Jqfb8Kkt3vV7fa1UUkmSDkc5nOMiDC36GgTWgMxbQUQALRkBdCIESM0YsQIv/Z96tA4iO7du6vFodmYt2/ffnhqh8GDB/t1nn79+mnOnDma752fBoB/HA7fuKZgv050tLkFyrnn+mZI9zdQRERI/foFroayWrY0t0CJiDBjtY51pnrAZoQsG/ztb3/T7EP/F/qkdzJFSTt37pQkJSQkqE11Eyce0u7Q4qjbyy7MCqBhu+EGuysA4AdCVh0qLi7WXXfdpVdeeUWSNHr0aF1SZoK/Xbt2SZISvctX+KHtoWb+vXv3yu12K9yfZToAAEDQEbLqyJo1a3T11Vfr119/lSRddNFFmjFjRrl9vCErISHB7/MmJSVJMtNC7N27V61atTpqn+LiYhWXGUjq8Xi0d+9eJSYmylGb8SAAADRSlmUpLy9P7dq1U1hY1QvnELLqQFpamiZPnqzCwkKFh4drypQpuv/++4/65bgOXYXk9q6d5oeyIamy45544glNYYkJAAACZvv27erQoUOV+xCygujAgQO69tpr9emnn0qSunXrpnfeeUcDBw6scH9vK1RWVpbfr7F3797D23FxcRXuc//992vSpEnl6urYsaM2b85QXFys36/V2LlceUpPT1FqaoacTj43BA/fNdQVvms1l5ubp+OO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Oxn33k6+3HcaiwWe7duax++4yexYIiJlQiVLREyRbivg8eWJ7D55jkB/K68M7kDfW+qZHUtEpMyoZIlIuUtOz2H40q2cOJNHreAAFg/tQpcm4WbHEhEpUypZIlKuth09w+MrtpF13kGj8GCWxcVwU1So2bFERMqcSpaIlJsvfjrF+FW7sDvdRDcM4+3hMURqiQYRqaRUskSkXCz+9gizP9+HYcDdrW/g7490IDhQP4JEpPLSTzgR8SqX22DWmiSWfn8UgKG3NWZ6/7ZaokFEKj2VLBHxmnyHi/H/2sm6vb8AMK1vK0becRMWiwqWiFR+Klki4hVncu38cXkiO49nEehn5aWHoukfXd/sWCIi5cZqdgApPwkJCbRp04aYmBizo0gVYBgGZ3LthFUP4J+P36qCJSJVjmayqpAxY8YwZswYsrOzCQsLMzuOVHIRoUEsi+uKy+2meZ0aZscRESl3Klki4jVNI0PMjiAiYhrtLhQRERHxApUsERERES9QyRIRERHxApUsERERES9QyRIRERHxApUsERERES9QyRIRERHxApUsERERES9QyRIRERHxApUsH3b48GGmTp1Khw4dCA8PJzIyktjYWMaNG8ehQ4fMjiciIiLXoJLloxISEmjbti1z585l9+7dWCwWgoOD+fbbb3nttdeIjo5mwYIFuN1us6OKiIjIFahk+aCEhATGjh2L3W4nLi6OY8eOkZmZyfHjx0lPT2fOnDm4XC4mTpxIfHy82XFFRETkClSyfExSUhJPP/00AAsWLGDJkiU0atSo6P7atWszZcoUPv30U6xWK6+99hqff/65WXFFRETkKlSyfMy8efOw2+306NGDCRMmXHVc7969GTVqFACzZ88ur3giIiLiIZUsH+JwOFi9ejUAY8aMue740aNHA7B582bOnDnj1WwiIiJSPCpZPmTLli3YbDYAevTocd3x0dHR1KlTB8Mw2Lhxo5fTiYiISHGoZPmQgwcPAtC6dWsiIyM92qZz584AbNq0yWu5REREpPhUsnxISkoKcKFkeap+/foAnDhxwiuZREREpGRUsnxIamoqABERER5vU7duXQAyMjK8kklERERKxt/sAPJ/CktWeHi4x9vUq1cPgPT09KuOKSgooKCgoOj2uXPnADhzJgWnM7skUaskp9NGbu6F183fX6+beI/ea1Je9F4rvuzsC8dO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\n"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plt.rcParams['font.sans-serif'] = ['Hiragino Sans GB']  # mac\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']  # win\n",
    "plt.rcParams['axes.unicode_minus'] = False\n",
    "\n",
    "\n",
    "# plt.figure(\n",
    "#     facecolor='white', \n",
    "#     figsize=(6, 6),\n",
    "#     dpi=100\n",
    "# )\n",
    "fig, ax = plt.subplots(\n",
    "    facecolor='white', \n",
    "    figsize=(6, 6),\n",
    "    dpi=100)\n",
    "\n",
    "ax.plot(df['A'], df['B'])\n",
    "ax.set_title('我是标题',\n",
    "          fontsize=30,\n",
    "          color='r'\n",
    "          )\n",
    "\n",
    "ax.set_xlabel('X轴',\n",
    "          fontsize=24,\n",
    "          color='g')\n",
    "ax.set_ylabel('Y轴',\n",
    "           fontsize=24,\n",
    "           color='b',\n",
    "           rotation=0,\n",
    "           labelpad=30)\n",
    "\n",
    "ax.set_xlim([-1, 5])\n",
    "ax.set_ylim([0, 20])\n",
    "# plt.xticks(fontsize=20)\n",
    "# plt.yticks([0,5,10,15,20], fontsize=20)\n",
    "\n",
    "ax.set_xticks([1,2,3,4])\n",
    "ax.set_yticks([1,4,9,16])\n",
    "ax.tick_params(labelsize=20)\n",
    "\n",
    "ax.xaxis.set_major_locator(\n",
    "    plt.MultipleLocator(2)\n",
    ")\n",
    "ax.xaxis.set_minor_locator(\n",
    "    plt.MultipleLocator(0.5)\n",
    ")\n",
    "ax.yaxis.set_major_locator(\n",
    "    plt.MultipleLocator(5)\n",
    ")\n",
    "ax.yaxis.set_minor_locator(\n",
    "    plt.MultipleLocator(1)\n",
    ")\n",
    "\n",
    "# plt.grid(color='y')\n",
    "ax.grid(color='y')"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "outputs": [],
   "source": [],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  },
  "pycharm": {
   "stem_cell": {
    "cell_type": "raw",
    "source": [],
    "metadata": {
     "collapsed": false
    }
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}